
/** 用户信息 */
export default class UserVO  { 
  /** 用户id */
  userId!:string;
  /** 用户编号 */
  userNo!:string;
  /** 用户姓名 */
  userName!:string;
  /** 用户职称 */
  userTitle!:string;
  /** 用户性别 */
  userSex!:EnumStruct<UserEnum_UserSex>;
  /** 出生年月 */
  birthday!:string;
  /** 身份证号 */
  identityCard!:string;
  /** 联系电话 */
  telNo!:string;
  /** 联系邮箱 */
  email!:string;
  /** 微信 */
  wechat!:string;
  /** QQ */
  tencent!:string;
  /** 用户头像 */
  userPortrait!:string;
  /** 联系地址 */
  address!:string;
  /** 用户类型 */
  userType!:EnumStruct<UserEnum_UserType>;
  /** 用户状态 */
  status!:EnumStruct<UserEnum_Status>;
  /** 添加者 */
  addUser!:string;
  /** 添加时间 */
  addTime!:string;
  /** 更新者 */
  updUser!:string;
  /** 更新时间 */
  updTime!:string;
  /** 账号名称 */
  accName!:string;
  /** 账号id */
  accId!:string;
  /** 账号所属组织名称 */
  orgName!:string;
  /** 账号所属组织全称 */
  orgFullName!:string;


  /**通过JSONObject创建实例对象 */
  public static getInstanceByJSONObj(jsonObj:any):UserVO{  
    let instance=new UserVO()  
    return Object.assign(instance, jsonObj) 
  }


  /** 通过属性参数创建实例对象 */
  public static getInstanceByParam(userId:string,userNo:string
                                   ,userName:string,userTitle:string
                                   ,userSex:EnumStruct<UserEnum_UserSex>,birthday:string
                                   ,identityCard:string,telNo:string
                                   ,email:string,wechat:string
                                   ,tencent:string,userPortrait:string
                                   ,address:string,userType:EnumStruct<UserEnum_UserType>
                                   ,status:EnumStruct<UserEnum_Status>,addUser:string
                                   ,addTime:string,updUser:string
                                   ,updTime:string,accName:string
                                   ,accId:string,orgName:string
                                   ,orgFullName:string){ 
    let instance=new UserVO()  
    instance.userId=userId;
    instance.userNo=userNo;
    instance.userName=userName;
    instance.userTitle=userTitle;
    instance.userSex=userSex;
    instance.birthday=birthday;
    instance.identityCard=identityCard;
    instance.telNo=telNo;
    instance.email=email;
    instance.wechat=wechat;
    instance.tencent=tencent;
    instance.userPortrait=userPortrait;
    instance.address=address;
    instance.userType=userType;
    instance.status=status;
    instance.addUser=addUser;
    instance.addTime=addTime;
    instance.updUser=updUser;
    instance.updTime=updTime;
    instance.accName=accName;
    instance.accId=accId;
    instance.orgName=orgName;
    instance.orgFullName=orgFullName;
    return instance 
  }


  /** 类属性的申明静态变量(适用于直接用到Class.fieldName的场景) */
  public static fieldNames={
       /**用户id*/
      userId:"userId",
      /**用户编号*/
      userNo:"userNo",
      /**用户姓名*/
      userName:"userName",
      /**用户职称*/
      userTitle:"userTitle",
      /**用户性别*/
      userSex:{code:"userSex.code",value:"userSex.value",this:"userSex"},
      /**出生年月*/
      birthday:"birthday",
      /**身份证号*/
      identityCard:"identityCard",
      /**联系电话*/
      telNo:"telNo",
      /**联系邮箱*/
      email:"email",
      /**微信*/
      wechat:"wechat",
      /**QQ*/
      tencent:"tencent",
      /**用户头像*/
      userPortrait:"userPortrait",
      /**联系地址*/
      address:"address",
      /**用户类型*/
      userType:{code:"userType.code",value:"userType.value",this:"userType"},
      /**用户状态*/
      status:{code:"status.code",value:"status.value",this:"status"},
      /**添加者*/
      addUser:"addUser",
      /**添加时间*/
      addTime:"addTime",
      /**更新者*/
      updUser:"updUser",
      /**更新时间*/
      updTime:"updTime",
      /**账号名称*/
      accName:"accName",
      /**账号id*/
      accId:"accId",
      /**账号所属组织名称*/
      orgName:"orgName",
      /**账号所属组织全称*/
      orgFullName:"orgFullName" } 
}

